package com.venus.service;

import com.github.pagehelper.PageInfo;
import com.venus.entity.Page;
import com.venus.entity.User;

import java.util.Map;
import java.util.Set;

/**
 * Created by admin on 13/10/17.
 */
public interface BaseService {

	/**
	 * 根据username查找登录用户
	 * @param username
	 * @return
	 */
	User findByUsername(String username);

	/**
	 * 验证登录信息
	 * @param user
	 * @return
	 */
	Map<String,String> loginValidate(User user);

	/**
	 * 查询用户权限信息
	 * @param userId
	 * @return
	 */
	Set<String> findPermissionsByUserId(long userId);

	/**
	 * 查询用户角色信息
	 * @param userId
	 * @return
	 */
	Set<String> findByRolesUserId(long userId);

	/**
	 * 分页查询用户列表
	 * @return
	 */
	PageInfo<User> findUsersByPageList(Page page);

}
